$(function() {
	// 初始化树信息
	initTree();
});
//====================================数据回显=============================================
function editInfo(data){
	$("#phone").val(data.phoneNumber);
	$("#manager").find("option").each(function(){
		if($(this).val()==data.manager.id){
			$(this).attr("selected",true);
		}
	});
	$("#division").find("option").each(function(){
		if($(this).val()==data.division.id){
			$(this).attr("selected",true);
		}
	});
	$("#mngModal").modal({
		backdrop : 'static'
	});
};
// ====================================保存数据============================================
$(document).on("click", "#go", function() {
	var id = $("#mngId").val();

	var data = {};
	var userId = $("#manager").val();
	var phone = $("#phone").val();
	var divisionId = $("#division").val();
	url = rootPath + "/ui/divisionMng/doInfo?userId="+userId+"&divisionId="+divisionId+"&phone="+phone;
	if (id == '') {// 添加
		$.ajax({
			url:rootPath+"/ui/divisionMng/findByDivision/"+divisionId,
			dataType:'json',
			type:'get',
			success:function(r){
				if(r.code==0){
					alert("已存在数据,无法添加");
					return;
				}else{
					$.ajax({
						url : url,
						type : "get",
						dataType : "json",
						success : function(data) {
							
							if (data.code == 1) {
								
								serverData.divisionId = divisionId;
								serverTable.draw();
								
							} else {
								alert("操作失败");
							}

						}
					});
				}
			}
		});
		
		/*data = {
			"manager" : {
				"id" : userId
			},
			"phoneNumber" : phone,
			"division" : {
				"id" : divisionId
			}
		};*/
	} else {
		url +="&id="+id;
		/*data = {
			"id" : id,
			"manager" : {
				"id" : userId
			},
			"phoneNumber" : phone,
			"division" : {
				"id" : divisionId
			}
		};*/
		$.ajax({
			url : url,
			type : "get",
			dataType : "json",
			success : function(data) {
				
				if (data.code == 1) {
					serverData.divisionId = divisionId;
					serverTable.draw();
				} else {
					alert("操作失败");
				}

			}
		});
	}
	$("#mngModal").modal('hide');
	
	
});
// ==================================添加模态框打开=========================================
$(document).on("click", ".addBtn", function() {
	$("#mngId").val('');
	$("#phone").val("");
	$("#mngModal").modal({
		backdrop : 'static'
	});
});

// ==========================================删除==================================================
function deleteInfo(data) {
	var id = data.id;
	var divisionId = data.division.id;
	if (!confirm("确定删除")) {
		return false;
	}
	$.ajax({
		url : rootPath + "/ui/divisionMng/doInfo/" + id,
		type : "post",
		data : '_method=DELETE',
		dataType : "json",
		success : function(data) {
			if (data.code == 1) {
				serverData.divisionId = divisionId;
				serverTable.draw();
			} else {
				alert("删除失败");
			}

		}
	});
};
// =====================================显示区域管理信息=================================
function showDivisionMng(e, treeId, treeNode) {
	var divisionId = treeNode.id;
	if (divisionId == '0' || divisionId == 0) {
		alert("根节点不在选择范围");
		return false;
	}
	// alert(divisionId);
	serverData.divisionId = divisionId;
	serverTable = jQuery('#dataTable')
			.DataTable(
					{
						"serverSide" : true,
						"ordering" : false,
						"ajax" : {
							"dataType" : "json",
							"type" : "get",
							"cache" : false,
							"url" : window.rootPath + '/ui/divisionMng/getpage',
							"data" : function(d) {
								return $.extend({}, d, serverData);
							}
						},
						columns : [
								{
									data : null,
									defaultContent : ""
								},
								{
									data : 'manager.name'
								},
								{
									data : 'phoneNumber'
								},

								{
									data : null,
									defaultContent : "",
									render : function(data, type, full, meta) {
										var operate = '<button type="button" class="btn btn-sm btn-info editBtn">修改</button>&nbsp;'
												+ '<button type="button" class="btn btn-sm btn-danger delBtn">删除</button>';

										return operate;

									}
								} ],
						"drawCallback" : function(oSettings) {
							var k = 0;
							var total = oSettings.aiDisplay.length
									+ oSettings._iDisplayStart;

							for (var i = oSettings._iDisplayStart, iLen = total; i < iLen; i++) {
								$(
										'td:eq(0)',
										oSettings.aoData[oSettings.aiDisplay[k]].nTr)
										.text(i + 1);
								k++;
							}

							serverTable.off('click', 'tr');
							serverTable.on('click', 'tr', function(event) {
								event = event || window.event;
								var target = event.target || event.scrElement;
								var data = serverTable.row(this).data();

								if (target.className.indexOf('delBtn') != -1) {

									deleteInfo(data);
								}

								if (target.className.indexOf('editBtn') != -1) {
									$("#mngId").val(data.id);
									 editInfo(data);
								}

								return;
							});
						}
					});

	serverTable.draw();

};
// ====================================常亮=======================================
// table数据显示
var serverData = {};
var serverTable;
var divisionNode = [];
var settings = {
	edit : {
		enable : true,
		showRemoveBtn : false,
		showRenameBtn : false,

	},
	data : {
		simpleData : {
			enable : true,
			idKey : "id",
			pIdKey : "parentId",
			rootParentId : 0
		}
	},
	view : {
		showLine : true
	},
	callback : {

		onClick : showDivisionMng
	}

};
// ==============================初始化树信息====================================
function initTree() {
	$.ajax({
		url : rootPath + "/ui/divisionMng/initDivisionTree",
		cache : false,
		type : "get",
		data : '',
		dataType : "json",
		contentType : 'application/json;charset=utf-8',// 解决返回数据中的中文乱码问题
		success : function(data) {
			divisionNode.push({
				id : 0,
				name : "区域信息",
				open : "true"

			});
			for (var i = 0; i < data.nodes.length; i++) {
				divisionNode.push(data.nodes[i]);
			}
			$.fn.zTree.init($("#divisionTree"), settings, divisionNode);
		}
	});
};